package final2107.day06;

public class SortCompare {
    public static void main(String[] args) {
        int[] ary = new int[200000];
        for (int i=0;i<ary.length;i++){
            int ran = (int)(Math.random()*400000);
            ary[i] = ran;
        }
        //获取当前时间
        long t1 = System.currentTimeMillis();
        //冒泡排序
//        for (int i=0;i<ary.length-1;i++){
//            for (int j=0;j<ary.length-1-i;j++){
//                if (ary[j]>ary[j+1]){
//                    int tmp = ary[j];
//                    ary[j] = ary[j+1];
//                    ary[j+1] = tmp;
//                }
//            }
//        }

        //选择排序
        //i表示为哪个位置求最小值
//        for (int i=0;i<ary.length-1;i++){
//            int min=i;  //假设当前位的值为最小值
//            for (int j=i+1;j<ary.length;j++){
//                if (ary[j]<ary[min]){
//                    min = j;
//                }
//            }
//            int tmp = ary[i];
//            ary[i] = ary[min];
//            ary[min] = tmp;
//        }

        //插入排序
        //i表示对未排序部分的元素进行遍历
        for (int i=1;i<ary.length;i++){
            //j表示插入元素的实时下标
            for (int j=i;j>0&&ary[j]<ary[j-1];j--){
                int tmp = ary[j];
                ary[j] = ary[j-1];
                ary[j-1] = tmp;
            }
        }

        //获取结束时间
        long t2 = System.currentTimeMillis();
        System.out.println("耗时："+(t2-t1)+"毫秒");


    }
}
